package com.ruoyi.jpbi.controller.konggu;

import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.jpbi.domain.konggu.Emps;
import com.ruoyi.jpbi.service.EmpsService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import java.util.ArrayList;
import java.util.List;


@Controller
@RequestMapping("/jpbi/emp")
public class EmpController extends BaseController {
    @Autowired
    private EmpsService empsService;

    private String prefix = "jpbi/konggu/emp";


    /**
     * 跳转分页页面
     */
    @GetMapping()
    public String user() {
        return prefix + "/emp";
    }


    /**
     * 获取所有人员
     *
     * @param emps 条件查询对象
     */
    @RequestMapping("/getEmpList")
    @ResponseBody
    public TableDataInfo getEmpList(Emps emps) {
        startPage();
        List<Emps> empsList = empsService.findPersonList(0 + "", "all", emps);
        return getDataTable(empsList);
    }

    /**
     * 获取单个人员信息
     *
     * @param id id
     */
    @RequestMapping("/detailEmp")
    public String detailEmp(String id, ModelMap mmap) {
        return prefix + "/details";
    }

    /**
     * 修改单个人员信息
     *
     * @param id eid
     */
    @RequestMapping("/editEmp")
    public String editEmp(String id, ModelMap mmap) {
        Emps emps = empsService.findEmpone(id);
        mmap.put("emps", emps);
        return prefix + "/edit";
    }

    /**
     * 新增用户
     */
    @PostMapping("/edit")
    @ResponseBody
    public AjaxResult edit(Emps emps) {
        return toAjax(empsService.updateEmp(emps));
    }


    /**
     * 增加人员信息
     *
     * @param emps 条件查询对象
     */
    @GetMapping("/add")
    public String add(Emps emps) {
        return prefix + "/add";
    }

    /**
     * 新增用户
     */
    @PostMapping("/add")
    @ResponseBody
    public AjaxResult addSave(Emps emps) {
        return toAjax(empsService.insertEmp(emps));
}

    /**
     * 删除用户
     * @param allEid 用户EID
     * @return
     */
    @RequestMapping("/remove")
    @ResponseBody
    public int remove(String allEid)
    {
        List<String> eidList = new ArrayList<String>();
        String[] arry = allEid.split(",");
        for(int i=0;i<arry.length;i++){
            eidList.add(arry[i]);
        }
        return empsService.deleteEmp(eidList);
    }

    /**
     * 查看员工1
     */
    @RequestMapping("/detail")
    public String detail(String id, ModelMap mmap) {
        mmap.put("emps", empsService.findEmpone(id));
        return prefix + "/details";
    }

}
